package com.jxpanda.spring.module.auth.core.user;

import lombok.Builder;
import lombok.Getter;
import lombok.Setter;
import org.springframework.security.oauth2.core.user.OAuth2User;

import java.util.Map;

@Getter
@Setter
@Builder
public class OAuth2UserContext {

    /**
     * 解析出来的用户标识符
     */
    private String oauth2UserId;
    /**
     * 用户标识符的属性名
     */
    private String oauth2UserIdAttributeName;
    /**
     * 原始的OAuth2User对象
     */
    private OAuth2User oAuth2User;

    /**
     * 请求中的注册 ID
     */
    private String registrationId;

    /**
     * 请求中的授权类型
     */
    private String grantType;

    /**
     * 请求中的客户端 ID
     */
    private String clientId;

    /**
     * 请求中的授权范围
     */
    private String scope;

    /**
     * 请求中的额外参数
     */
    private Map<String, Object> additionalParameters;

}
